/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package manejoExcepciones;

import interfaz.InterfaceEjp;
import java.util.List;

/**
 *
 * Excepciones para la clase Proveedor y toda su logica de negocios.
 *
 * @author MANU
 */
public class ExcepcionesProveedor {
static Excepciones e= new Excepciones();

/**
 * Valida que los campos  introducidos en los productos de inventario
 * no sean vacios.
 *
 * @param Recibe String Nombre, String precio, String cantidad, String presentacion.
 *
 *
 */
public  static void CamposNoLlenos(String nombre, String precio, String cantidad,
    String presentacion)throws Excepciones{
        if (nombre.equalsIgnoreCase("") || precio.equalsIgnoreCase("")
           || cantidad.equalsIgnoreCase("") || presentacion.equalsIgnoreCase("")){
          //manda el mensaje de excepcion
            e.excepcion(1);
        }
    }

/**
 * Valida que los campos instroducidos en proveedores no sean vacios.
 *
 * @param Recibe String nombe, int tipo, String direccion
 */
 public static void CamposNoLlenos(String nombre, int tipo, String direccion
              ,String nombreContacto,String numeroContacto)throws Excepciones{
      if(nombre.isEmpty() || direccion.isEmpty() || tipo==0
              || nombreContacto.isEmpty()|| numeroContacto.isEmpty())
          //envia la excepcion
          e.excepcion(1);

        }
/**
 * Valida que el rif tenga exactamente 10 caracteres.
 *
 * @param Recibe String rif
 */
 public static void validaRif(String rif)throws Excepciones{
           if(rif.length()!=10)
          //envia la excepcion
               e.excepcion(2);
        }
/**
 *
 * Valida que al ingresar al proveedor no este repetido en la base de datos.
 *
 * @param Recibe String rif
 */
public static void validaProveedorRepetido(String rif)throws Excepciones{
     InterfaceEjp ejp = gestion.GestionSpring.getSingleton().MetodoGestion();
     if(ejp.BuscarProveedorPorRif(rif).size()>0)
     e.excepcion(3);
        }
/**
 * Valida que el codigo de area tenga exactamente 4 caracteres.
 *
 * @param Recibe String codigo
 */
public static void validaCodigoArea(String codigo)throws Excepciones{
           if(codigo.length()!=4)
            //envia la excepcion
               e.excepcion(4);
       }

/**
 * Valida que el numero de telefono tenga exactamente 4 caracteres.
 *
 * @param Recibe String numero
 */

public static void validaNumeroTlf(String numero)throws Excepciones{
           if(numero.length()!=7)
            //envia la excepcion
               e.excepcion(5);
        }
/**
 * Valida si todos los campos de busqueda de proveedores estan vacios.
 *
 * @param Recibe String codig, String nombre, int tipo
 */
  public static void CamposNoLlenos(String codigo, String nombre, int tipo
            )throws Excepciones{
      if(codigo.isEmpty() && nombre.isEmpty() && tipo==0)
        //envia la excepcion
          e.excepcion(6);
        }
/**
 * Valida si una lista esta vacia.
 *
 * @param Recibe List lista
 */
public static void listaVacia(List lista
        )throws Excepciones{

      if(lista.size()==0)
       //envia la excepcion
          e.excepcion(7);

        }
/**
     * Excepcion que verifica si los campos Precio y Cantidad son negativos o
     * iguales a cero
     *
     * @param float Precio, int Cantidad
     *        Campos numericos para registrar un producto.
     *
     */

    public static void CamposNoNegativos(float Precio, int Cantidad)
    throws Excepciones{

        if (Precio <= 0 || Cantidad <=0){
            e.excepcion(8);
        }
    }

}
